<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition template="../principal.xhtml"
                xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui"
                xmlns:c="http://java.sun.com/jsp/jstl/core">



    <ui:define name="principal">
        <h2>Gerenciar Tratamento</h2>
        
        <h:form id="breadcrumb">
            <p:breadCrumb styleClass="navegacao" style="margin-top: 5px; margin-bottom: 40px">  
                <c:if test="#{loginMB.dentista.contaUsuario.tipo == 'AD'}" >  
                    <p:menuitem value="Categories" url="../user-master/menuMaster.xhtml" />  
                </c:if>
                <c:if test="#{loginMB.dentista.contaUsuario.tipo == 'DE'}" >  
                    <p:menuitem value="Categories" url="../user-simple/menuDentista.xhtml" />  
                </c:if>
                <p:menuitem value="Tratamento" url="../paciente/gerenciarTratamento.xhtml" />  
            </p:breadCrumb>
        </h:form>
        
        <h:form id="cad">
            <p:growl id="message"/>
            <p:fieldset legend="SELECIONE O PACIENTE" toggleable="true" toggleSpeed="500" styleClass="grupo-form">
                <h:panelGrid columns="2" styleClass="table-form" cellspacing="10">
                    <h:outputLabel for="paciente" value="*Paciente: " />
                    <h:panelGrid columns="2">
                        <p:inputText id="paciente" title="paciente" value="#{gerenciarTratamentoMB.pacienteSelecionado.nome} #{gerenciarTratamentoMB.pacienteSelecionado.sobrenome}" label="Nome" size="30" readonly="true" />
                        <p:commandButton onclick="pacienteDialog.show()" icon="ui-icon-search" type="button" update=":dialog:pacientes"/>
                    </h:panelGrid>
                </h:panelGrid>
            </p:fieldset>

            <p:fieldset legend="SERVIÇOS" toggleable="true" toggleSpeed="500" styleClass="grupo-form">
                <h:panelGrid columns="1" styleClass="table-form" cellspacing="10">
                    <p:dataTable id="servicos" var="serv" value="#{gerenciarTratamentoMB.tratamento.servicosPrestados}" style="width: 600px;" emptyMessage="Sem serviços selecionados"
                                 paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                                 rowsPerPageTemplate="5,10,15" paginatorPosition="bottom" paginatorAlwaysVisible="false">  
                        <p:column headerText="Serviços Selecionados">
                            <h:graphicImage library="images" name="servicos.png"/>
                            <h:outputText value="    #{serv.servico.nome}, Quantidade:#{serv.quantidade}, Valor: R$ #{serv.valor}" />
                            <p:commandLink id="excluir-servicos" update="servicos" action="#{gerenciarTratamentoMB.excluirServicoPrestado(serv)}" title="Excluir" style="float: right; margin-top: 3px;">  
                                <h:outputText styleClass="ui-icon ui-icon-closethick" />
                            </p:commandLink>  
                        </p:column>
                    </p:dataTable>
                    <p:commandButton id="selectButton" update=":dialog2:servicos-cadastrados, :dialog3:quantidade-display" onclick="servicosDialog.show()" icon="ui-icon-plusthick" title="Adcionar" style="float: right" />  
                </h:panelGrid>
                <p:separator/>
                <h:panelGrid columns="3" styleClass="table-form" cellspacing="10" style="float: right">
                    <p:commandButton id="emitir-orcamento" value="Gerar Orçamento" action="#{gerenciarTratamentoMB.gerarOrcamento()}" icon="ui-icon-document" ajax="false" />  
                </h:panelGrid>
            </p:fieldset>

            <p:fieldset legend="PAGAMENTO" toggleable="true" toggleSpeed="500" styleClass="grupo-form">
                <h:panelGrid columns="4" styleClass="table-form" cellspacing="10">
                    <h:outputLabel for="forma" value="*Forma de Pagamento: " />
                    <p:selectOneMenu id="forma" value="#{gerenciarTratamentoMB.tratamento.pagamento.forma_pagamento}" required="true" style="width: 100px">  
                        <f:selectItem itemLabel="Dinheiro" itemValue="Dinheiro" />  
                        <f:selectItem itemLabel="Cartão" itemValue="Cartao" />  
                        <f:selectItem itemLabel="Cheque" itemValue="Cheque" />  
                    </p:selectOneMenu> 
                    <h:outputLabel for="parcelas" value="*Numero de Parcelas: " />
                    <p:inputText id="parcelas" value="#{gerenciarTratamentoMB.tratamento.pagamento.numero_parcelas}" required="true" size="10" />
                    <h:outputLabel for="primeira-parcela" value="*Data da primeira parcela: " />
                    <p:calendar id="primeira-parcela" locale="pt" value="#{gerenciarTratamentoMB.tratamento.pagamento.dia_primeira_parcela}" navigator="true" />
                </h:panelGrid>
            </p:fieldset>

            <p:fieldset legend="OSERVAÇÃO" toggleable="true" toggleSpeed="500" styleClass="grupo-form">
                <h:panelGrid columns="1" styleClass="table-form" >
                    <p:inputTextarea id="observacoes" cols="138" value="#{gerenciarTratamentoMB.tratamento.observacao}"/>
                </h:panelGrid>
            </p:fieldset>

            <p:fieldset legend="AGENDAR ATENDIMENTOS" toggleable="true" toggleSpeed="500" styleClass="grupo-form">
                <h:panelGrid columns="1" styleClass="table-form" cellspacing="10">
                    <p:dataTable id="atendimentos" var="atend" value="#{gerenciarTratamentoMB.tratamento.atendimentos}" style="width: 600px" emptyMessage="Sem atendimentos cadastrados"
                                 paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                                 rowsPerPageTemplate="5,10,15" paginatorPosition="bottom" paginatorAlwaysVisible="false">  
                        <p:column headerText="Atendimentos Cadastrados">
                            <h:graphicImage library="images" name="atendimento.png"/>
                            <h:outputText value="    Data: " />
                            <h:outputText value="#{atend.dataAtendimento}">
                                <f:convertDateTime pattern="dd/MM/yyyy"/>
                            </h:outputText>
                            <h:outputText value=" Horário: #{atend.horarioAtendimento.horario}" />
                            <p:commandLink id="excluir-atendimentos" update="atendimentos" action="#{gerenciarTratamentoMB.excluirAtendimento(atend)}" title="Excluir" style="float: right; margin-top: 3px;">  
                                <h:outputText styleClass="ui-icon ui-icon-closethick" />
                            </p:commandLink>  
                        </p:column>
                    </p:dataTable>
                    <p:commandButton id="selectButton2" update=":dialog4:atendimento-display" onclick="novoAtendDialog.show()" icon="ui-icon-plusthick" title="Adcionar" style="float: right"/>  
                </h:panelGrid>
            </p:fieldset>

            <p:fieldset legend="ITENS DE ESTOQUE CONSUMIDOS" toggleable="true" toggleSpeed="500" styleClass="grupo-form">
                <h:panelGrid columns="1" styleClass="table-form" cellspacing="10">
                    <p:dataTable id="itens" var="item" value="#{gerenciarTratamentoMB.tratamento.itensTratamentos}" style="width: 600px;" emptyMessage="Sem serviços selecionados"
                                 paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                                 rowsPerPageTemplate="5,10,15" paginatorPosition="bottom" paginatorAlwaysVisible="false">  
                        <p:column headerText="Itens de Estoque Selecionados">
                            <h:graphicImage library="images" name="item.png"/>
                            <h:outputText value="    #{item.itemEstoque.nome}, Fornecedor: #{item.itemEstoque.fornecedor}, Quantidade: #{item.quantidade_consumida}" />
                            <p:commandLink id="excluir-itens" update="itens" action="#{gerenciarTratamentoMB.excluirItemTratamento(item)}" title="Excluir" style="float: right; margin-top: 3px;">  
                                <h:outputText styleClass="ui-icon ui-icon-closethick" />
                            </p:commandLink>  
                        </p:column>
                    </p:dataTable>
                    <p:commandButton id="selectButton3" update=":dialog5:itens-cadastrados, :dialog6:quantidadeitem-display" onclick="itensDialog.show()" icon="ui-icon-plusthick" title="Adcionar" style="float: right" />  
                </h:panelGrid>
            </p:fieldset>

            <h:panelGrid columns="1" style="text-align: right; width: 100%;">
                <p:commandButton id="salvar" value="Salvar" update=":cad, :dados:table-tratamento" action="#{gerenciarTratamentoMB.salvarTratamento}" image="ui-icon-disk" style="font-size: 15px;" />
            </h:panelGrid>
        </h:form>

        <p:separator style="margin-top: 20px; margin-bottom: 20px;"/>

        <h:form id="dados">
            <p:dataTable id="table-tratamento" value="#{gerenciarTratamentoMB.tratamentoTodos}" var="tratamento" tableStyle="width:100%" paginator="true" rows="10"  widgetVar="tratamentoTable"
                         paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                         rowsPerPageTemplate="10,15,20,30" paginatorPosition="bottom" paginatorAlwaysVisible="false" emptyMessage="Sem tratamentos cadastrados.">

                <f:facet name="header">  
                    TRATAMENTOS CADASTRADOS
                </f:facet>

                <p:column headerText="ID" sortBy="#{tratamento.id}" filterMatchMode="contains" filterBy="#{tratamento.id}" filterStyle="display:none;" >  
                    <h:outputText value="#{tratamento.id}" />  
                </p:column>

                <p:column headerText="PACIENTE" sortBy="#{tratamento.paciente.nome}" filterMatchMode="contains" filterBy="#{tratamento.paciente.nome}" filterStyle="display:none;">  
                    <h:outputText value="#{tratamento.paciente.nome} #{tratamento.paciente.sobrenome}" />  
                </p:column>

                <p:column headerText="VALOR TOTAL" sortBy="#{tratamento.pagamento.valorTotal}" filterMatchMode="contains" filterBy="#{tratamento.pagamento.valorTotal}" filterStyle="display:none;">  
                    <h:outputText value="#{tratamento.pagamento.valorTotal}" >
                        <f:convertNumber pattern="R$ #,##0.00"/>
                    </h:outputText>  
                </p:column>

                <p:column headerText="STATUS" sortBy="#{tratamento.status}" filterMatchMode="contains" filterBy="#{tratamento.status}" filterStyle="display:none;">  
                    <h:outputText value="#{tratamento.status}" />  
                </p:column>

                <p:column style="width:40px">  
                    <p:commandButton id="selectButton" update=":dados:display, :dados:botoes" oncomplete="tratamentoDialog.show()" icon="ui-icon-search" title="Ver">  
                        <f:setPropertyActionListener value="#{tratamento}" target="#{gerenciarTratamentoMB.tratamentoSelecionado}" />
                    </p:commandButton>  
                </p:column>

                <f:facet name="footer">  
                    <p:outputPanel style="float: right">  
                        <h:outputText value="BUSCAR: " />  
                        <p:inputText id="globalFilter" onblur="tratamentoTable.filter()" style="width:200px" />  
                    </p:outputPanel> 
                </f:facet>

            </p:dataTable>

            <p:blockUI block="table-tratamento" trigger="table-tratamento, :cad:salvar">  
                Carregando...<br />  
                <p:graphicImage library="images" name="loader.gif"/>  
            </p:blockUI>

            <p:dialog header="Detalhes do Tratamento" widgetVar="tratamentoDialog" resizable="false" id="tratamentoDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true">
                <h:panelGrid id="display" columns="2" cellspacing="4" width="400"> 

                    <p:tabView id="tabView">  

                        <p:tab id="tab1" title="Paciente">  
                            <h:panelGrid columns="2" cellpadding="10" width="600">
                                <h:graphicImage library="pacientes" name="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.foto}" class="img-pessoa"/>
                                <h:panelGrid columns="2" cellspacing="10"> 

                                    <h:outputText value="NOME: " styleClass="rotulo" />
                                    <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.nome} #{gerenciarTratamentoMB.tratamentoSelecionado.paciente.sobrenome}" style="font-weight:bold"/>
                                    <h:outputText value="DATA DE NASCIMENTO: " styleClass="rotulo" />
                                    <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.data_nascimento}"  style="font-weight:bold">
                                        <f:convertDateTime pattern="dd/MM/yyyy"/>
                                    </h:outputText> 
                                    <h:outputText value="SEXO: " styleClass="rotulo"/>
                                    <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.sexo}" style="font-weight:bold"/>
                                    <h:outputText value="PROFISSÃO: " styleClass="rotulo"/>
                                    <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.profissao}" style="font-weight:bold"/>
                                    <h:outputText value="CPF: " styleClass="rotulo"/>
                                    <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.cpf}" style="font-weight:bold"/>
                                    <h:outputText value="RG: " styleClass="rotulo"/>
                                    <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.paciente.rg}" style="font-weight:bold"/>
                                </h:panelGrid>
                            </h:panelGrid>
                        </p:tab>  

                        <p:tab id="tab2" title="Serviços">  
                            <h:panelGrid columns="1" cellpadding="10" width="600">
                                <h:panelGrid columns="1" cellspacing="4">
                                    <p:dataTable id="servicos-prestados" var="serv" value="#{gerenciarTratamentoMB.tratamentoSelecionado.servicosPrestados}" style="width: 585px;" emptyMessage="Sem serviços selecionados" 
                                                 paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                                                 rowsPerPageTemplate="5,10,15" paginatorPosition="bottom" paginatorAlwaysVisible="false">  
                                        <p:column headerText="Serviços Selecionados">
                                            <h:graphicImage library="images" name="servicos.png"/>
                                            <h:outputText value="    #{serv.servico.nome}, Quantidade:#{serv.quantidade}, Valor: R$ #{serv.valor}" />
                                        </p:column>
                                    </p:dataTable>
                                </h:panelGrid>
                            </h:panelGrid>  
                        </p:tab>  

                        <p:tab id="tab3" title="Pagamento">  
                            <h:panelGrid columns="2" cellspacing="10" width="600">
                                <h:outputText value="FORMA DE PAGAMENTO: " styleClass="rotulo" />
                                <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.pagamento.forma_pagamento}" style="font-weight:bold"/>
                                <h:outputText value="NÚMERO DE PARCELAS: " styleClass="rotulo" />
                                <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.pagamento.numero_parcelas} parcela(s)" style="font-weight:bold"/>
                                <h:outputText value="DATA DA PRIMEIRA PARCELA: " styleClass="rotulo" />
                                <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.pagamento.dia_primeira_parcela}"  style="font-weight:bold">
                                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                                </h:outputText> 
                                <h:outputText value="VALOR TOTAL: " styleClass="rotulo" />
                                <h:outputText value="R$ #{gerenciarTratamentoMB.tratamentoSelecionado.pagamento.valorTotal}" style="font-weight:bold"/>
                                <h:outputText value="STATUS DO PAGAMENTO: " styleClass="rotulo" />
                                <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.pagamento.statusPagamento}" style="font-weight:bold"/>
                            </h:panelGrid>
                            <h:panelGrid columns="1" style="text-align: right; width: 100%; margin-top: 5px" rendered="#{gerenciarTratamentoMB.tratamentoSelecionado.pagamento.statusPagamento eq 'ABERTO'}">
                                <p:commandButton value="Quitar" update=":cad:message, :dados" action="#{gerenciarTratamentoMB.quitarPagamento()}" oncomplete="tratamentoDialog.hide();" image="ui-icon-check" style="font-size: 12px;" />
                            </h:panelGrid>
                        </p:tab>  

                        <p:tab id="tab4" title="Atendimentos">  
                            <h:panelGrid columns="1" cellpadding="10" width="600">
                                <p:dataTable id="atendimentos-agendados" var="atend" value="#{gerenciarTratamentoMB.tratamentoSelecionado.atendimentos}" style="width: 585px" emptyMessage="Sem atendimentos cadastrados"
                                             paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                                             rowsPerPageTemplate="5,10,15" paginatorPosition="bottom" paginatorAlwaysVisible="false">  
                                    <p:column headerText="Atendimentos Cadastrados">
                                        <h:graphicImage library="images" name="atendimento.png"/>
                                        <h:outputText value="    Data: " />
                                        <h:outputText value="#{atend.dataAtendimento}">
                                            <f:convertDateTime pattern="dd/MM/yyyy"/>
                                        </h:outputText>
                                        <h:outputText value=" Horário: #{atend.horarioAtendimento.horario}" />
                                    </p:column>
                                </p:dataTable>
                            </h:panelGrid>  
                        </p:tab>

                        <p:tab id="tab5" title="Itens Consumidos">  
                            <h:panelGrid columns="1" cellpadding="10" width="600">  
                                <p:dataTable id="itens-consumidos" var="item" value="#{gerenciarTratamentoMB.tratamentoSelecionado.itensTratamentos}" style="width: 585px;" emptyMessage="Sem serviços selecionados"
                                             paginator="true" rows="5" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"  
                                             rowsPerPageTemplate="5,10,15" paginatorPosition="bottom" paginatorAlwaysVisible="false">  
                                    <p:column headerText="Itens de Estoque Selecionados">
                                        <h:graphicImage library="images" name="item.png"/>
                                        <h:outputText value="    #{item.itemEstoque.nome}, Fornecedor: #{item.itemEstoque.fornecedor}, Quantidade: #{item.quantidade_consumida}" />
                                    </p:column>
                                </p:dataTable>
                            </h:panelGrid>  
                        </p:tab>

                        <p:tab id="tab6" title="Outros">  
                            <h:panelGrid columns="2" cellspacing="10" width="600">
                                <h:outputText value="STATUS DO TRATAMENTO: " styleClass="rotulo" />
                                <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.status}" style="font-weight:bold"/>
                                <h:outputText value="OBSERVAÇÃO: " styleClass="rotulo" />
                                <h:outputText value="#{gerenciarTratamentoMB.tratamentoSelecionado.observacao}" style="font-weight:bold"/>
                            </h:panelGrid>  
                        </p:tab>
                    </p:tabView>  

                </h:panelGrid>
                <h:panelGrid id="botoes" columns="3" style="float: right">
                    <p:commandButton value="Finalizar" update=":cad, :dados" action="#{gerenciarTratamentoMB.finalizarTratamento()}" icon="ui-icon-check" oncomplete="tratamentoDialog.hide();" rendered="#{gerenciarTratamentoMB.tratamentoSelecionado.status eq 'ANDAMENTO'}" />
                    <p:commandButton value="Excluir" onclick="confirmation.show()" icon="ui-icon-trash" type="button" />
                    <p:commandButton value="Atualizar" update=":cad, :dados" action="#{gerenciarTratamentoMB.atualizarTratamento()}" icon="ui-icon-refresh" oncomplete="tratamentoDialog.hide();" />
                </h:panelGrid>
            </p:dialog>

            <p:confirmDialog id="confirmDialog" message="Tem certeza que deseja excluir o Tratamento?" header="Excluir Serviço" severity="alert" widgetVar="confirmation">  
                <p:commandButton id="confirm" value="Confirmar" update=":dados, :cad" oncomplete="confirmation.hide()" action="#{gerenciarTratamentoMB.excluirTratamento()}" />  
                <p:commandButton id="decline" value="Cancelar" onclick="confirmation.hide()" type="button" />   
            </p:confirmDialog>
        </h:form>

        <h:form id="dialog">
            <p:dialog header="Pacientes Cadastrados" widgetVar="pacienteDialog" resizable="false" id="pacienteDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true" width="500">
                <p:dataTable id="pacientes" var="paciente" value="#{gerenciarTratamentoMB.pacienteDataModel}" widgetVar="pacienteTable" 
                             selection="#{gerenciarTratamentoMB.pacienteSelecionado}" selectionMode="single" emptyMessage="Sem pacientes cadastrados"
                             paginator="true" paginatorAlwaysVisible="false" rows="10" paginatorPosition="bottom">

                    <p:ajax event="rowSelect" listener="#{gerenciarTratamentoMB.onRowSelect}"   
                            update=":cad:paciente" oncomplete="pacienteDialog.hide()" />

                    <f:facet name="header">  
                        Selecione um paciente para a construção do receituário  
                    </f:facet>

                    <p:column headerText="ID" filterBy="#{paciente.id}" filterMatchMode="contains" filterStyle="display:none;">  
                        #{paciente.id}  
                    </p:column>

                    <p:column headerText="NOME" filterBy="#{paciente.nome}" filterMatchMode="contains" filterStyle="display:none;">  
                        #{paciente.nome} #{paciente.sobrenome} 
                    </p:column>

                    <p:column headerText="CPF" filterBy="#{paciente.cpf}" filterMatchMode="contains" filterStyle="display:none;">  
                        #{paciente.cpf}  
                    </p:column>

                    <f:facet name="footer">  
                        <p:outputPanel style="float: right">  
                            <h:outputText value="BUSCAR: " />  
                            <p:inputText id="globalFilter" onkeyup="pacienteTable.filter()" style="width:200px" />  
                        </p:outputPanel> 
                    </f:facet>
                </p:dataTable>
            </p:dialog>
        </h:form>

        <h:form id="dialog2">
            <p:dialog header="Serviços Cadastrados" widgetVar="servicosDialog" resizable="false" id="servicosDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true" width="500">
                <p:dataTable id="servicos-cadastrados" widgetVar="servicosTable" var="servico" value="#{gerenciarTratamentoMB.listaServicos}" emptyMessage="Sem serviços cadastrados"
                             paginator="true" paginatorAlwaysVisible="false" rows="10" paginatorPosition="bottom">


                    <p:column style="width:4%">  
                        <p:rowToggler />  
                    </p:column>

                    <p:column headerText="NOME" filterMatchMode="contains" filterBy="#{servico.nome}" filterStyle="display:none;">  
                        #{servico.nome}
                    </p:column>

                    <p:column headerText="VALOR 1">  
                        <h:outputText value="#{servico.valor1}" >
                            <f:convertNumber pattern="#,##0.00"/>
                        </h:outputText>  
                    </p:column>

                    <p:column headerText="VALOR 2">  
                        <h:outputText value="#{servico.valor2}" >
                            <f:convertNumber pattern="#,##0.00"/>
                        </h:outputText>  
                    </p:column>

                    <p:column headerText="VALOR 3">  
                        <h:outputText value="#{servico.valor3}" >
                            <f:convertNumber pattern="#,##0.00"/>
                        </h:outputText>  
                    </p:column>

                    <p:column style="width:40px">  
                        <p:commandButton id="selectButton2" update=":dialog3" oncomplete="quantServDialog.show(); servicosDialog.hide()" icon="ui-icon-check" title="Escolher">  
                            <f:setPropertyActionListener value="#{servico}" target="#{gerenciarTratamentoMB.servicoSelecionado}" />
                        </p:commandButton>
                    </p:column>

                    <p:rowExpansion>
                        <h:outputText value="DESCRIÇÃO:" style="font-weight: bolder"/><br/>
                        <h:outputText value="#{servico.descricao}" />
                    </p:rowExpansion>

                    <f:facet name="footer">  
                        <p:outputPanel style="float: right">  
                            <h:outputText value="BUSCAR: " />  
                            <p:inputText id="globalFilter" onkeyup="servicosTable.filter()" style="width:200px" />  
                        </p:outputPanel> 
                    </f:facet>
                </p:dataTable>
            </p:dialog>
        </h:form>

        <h:form id="dialog3">
            <p:dialog header="Detalhes do Serviço" widgetVar="quantServDialog" resizable="false" id="quantSerDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true" >
                <h:panelGrid id="quantidade-display" columns="1">
                    <h:outputLabel for="valor-selecionado" value="*Valor: " />
                    <p:selectOneRadio id="valor-selecionado" value="#{gerenciarTratamentoMB.valorSelecionado}">  
                        <f:selectItem itemLabel="  R$ #{gerenciarTratamentoMB.servicoSelecionado.valor1}    " itemValue="#{gerenciarTratamentoMB.servicoSelecionado.valor1}" />  
                        <f:selectItem itemLabel="  R$ #{gerenciarTratamentoMB.servicoSelecionado.valor2}    " itemValue="#{gerenciarTratamentoMB.servicoSelecionado.valor2}" />  
                        <f:selectItem itemLabel="  R$ #{gerenciarTratamentoMB.servicoSelecionado.valor3}    " itemValue="#{gerenciarTratamentoMB.servicoSelecionado.valor3}" />  
                    </p:selectOneRadio> 
                    <h:outputLabel for="quantidade" value="*Quantidade: " />  
                    <p:inputText id="quantidade" value="#{gerenciarTratamentoMB.quantidadeServico}" required="true" label="quantidade" size="30" >
                        <f:convertNumber integerOnly="true" minIntegerDigits="1"  />
                    </p:inputText>
                </h:panelGrid>
                <p:commandButton value="Salvar" update=":cad:message, :cad:servicos" action="#{gerenciarTratamentoMB.adcionarServicoPrestado()}" image="ui-icon ui-icon-disk" style="float: right" oncomplete="quantServDialog.hide();"/>
            </p:dialog>
        </h:form>

        <h:form id="dialog4">
            <p:dialog header="Novo Atendimento" widgetVar="novoAtendDialog" resizable="false" id="novoAtendDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true" >
                <h:panelGrid id="atendimento-display" columns="1" cellspacing="10">

                    <h:panelGrid columns="1" cellspacing="5">
                        <h:outputLabel for="data-atendimento" value="*Data do Atendimento: " />
                        <p:calendar locale="pt" id="data-atendimento" value="#{gerenciarTratamentoMB.atendimento.dataAtendimento}" navigator="true" required="true"  >
                            <p:ajax event="dateSelect" listener="#{gerenciarTratamentoMB.atualizarHorario}" update="horarios-disponiveis" />  
                        </p:calendar>
                    </h:panelGrid>
                    <h:panelGrid columns="1" cellspacing="5">
                        <h:outputLabel for="descricao-atendimento" value="*Descrição: " />  
                        <p:inputTextarea id="descricao-atendimento" cols="50" value="#{gerenciarTratamentoMB.atendimento.descricao}"/>
                    </h:panelGrid>
                    <h:outputText value="*Horário:" />
                    <h:panelGrid id="horarios-disponiveis" columns="2" cellspacing="8" style="text-align: center; border: 1px solid #A8A8A8; border-radius: 5px; margin: 0 auto;">

                        <p:selectOneRadio id="horarioatendimento" value="#{gerenciarTratamentoMB.atendimento.horarioAtendimento}" layout="custom">
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.manha1}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.manha2}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.manha3}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.manha4}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.manha5}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.manha6}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.tarde1}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.tarde2}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.tarde3}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.tarde4}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.tarde5}" />
                            <f:selectItem itemValue="#{gerenciarTratamentoMB.tarde6}" />
                        </p:selectOneRadio>
                        <h:outputText value=""/>
                        <h:outputText value="MANHÃ" style="font-weight: bolder; text-decoration: underline"/>
                        <h:outputText value="TARDE" style="font-weight: bolder; text-decoration: underline"/>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="0" disabled="#{gerenciarTratamentoMB.isvManha1()}"/>
                            <h:outputText value="08:00 às 08:40"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="6" disabled="#{gerenciarTratamentoMB.isvTarde1()}"/>
                            <h:outputText value="14:00 às 14:40"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="1" disabled="#{gerenciarTratamentoMB.isvManha2()}"/>
                            <h:outputText value="08:40 às 09:20"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="7" disabled="#{gerenciarTratamentoMB.isvTarde2()}"/>
                            <h:outputText value="14:40 às 15:20"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="2" disabled="#{gerenciarTratamentoMB.isvManha3()}"/>
                            <h:outputText value="09:20 às 10:00"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="8" disabled="#{gerenciarTratamentoMB.isvTarde3()}"/>
                            <h:outputText value="15:20 às 16:00"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="3" disabled="#{gerenciarTratamentoMB.isvManha4()}"/>
                            <h:outputText value="10:00 às 10:40"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="9" disabled="#{gerenciarTratamentoMB.isvTarde4()}"/>
                            <h:outputText value="16:00 às 16:40"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="4" disabled="#{gerenciarTratamentoMB.isvManha5()}"/>
                            <h:outputText value="10:40 às 11:20"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="10" disabled="#{gerenciarTratamentoMB.isvTarde5()}"/>
                            <h:outputText value="16:40 às 17:20"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="5" disabled="#{gerenciarTratamentoMB.isvManha6()}"/>
                            <h:outputText value="11:20 às 12:00"/>
                        </h:panelGrid>

                        <h:panelGrid columns="2">
                            <p:radioButton for="horarioatendimento" itemIndex="11" disabled="#{gerenciarTratamentoMB.isvTarde6()}"/>
                            <h:outputText value="17:20 às 18:00"/>
                        </h:panelGrid>
                    </h:panelGrid>
                </h:panelGrid>
                <p:commandButton value="Salvar" update=":cad:message, :cad:atendimentos, atendimento-display" action="#{gerenciarTratamentoMB.adcionarAtendimento()}" image="ui-icon ui-icon-disk" style="float: right" oncomplete="novoAtendDialog.hide();"/>
            </p:dialog>
        </h:form>

        <h:form id="dialog5">
            <p:dialog header="Itens de Estoque Cadastrados" widgetVar="itensDialog" resizable="false" id="itensDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true" width="500">
                <p:dataTable id="itens-cadastrados" var="item" value="#{gerenciarTratamentoMB.listaItensEstoque}" emptyMessage="Sem Itens de Estoque cadastrados"
                             widgetVar="itemTable" paginator="true" paginatorAlwaysVisible="false" rows="10" paginatorPosition="bottom">


                    <p:column style="width:4%">  
                        <p:rowToggler />  
                    </p:column>

                    <p:column headerText="NOME" filterMatchMode="contains" filterBy="#{item.nome}" filterStyle="display:none;">  
                        #{item.nome}
                    </p:column>

                    <p:column headerText="FORNECEDOR" filterMatchMode="contains" filterBy="#{item.fornecedor}" filterStyle="display:none;">  
                        #{item.fornecedor}
                    </p:column>

                    <p:column headerText="PREÇO" filterMatchMode="contains" filterBy="#{item.preco}" filterStyle="display:none;">  
                        <h:outputText value="#{item.preco}" >
                            <f:convertNumber pattern="#,##0.00"/>
                        </h:outputText>  
                    </p:column>

                    <p:column headerText="QUANT.">  
                        #{item.quantidade_estoque}
                    </p:column>

                    <p:column style="width:40px">  
                        <p:commandButton id="selectButton2" update=":dialog6" oncomplete="quantItemDialog.show(); itensDialog.hide()" icon="ui-icon-check" title="Escolher">  
                            <f:setPropertyActionListener value="#{item}" target="#{gerenciarTratamentoMB.itemEstoqueSelecionado}" />
                        </p:commandButton>
                    </p:column>

                    <p:rowExpansion>
                        <h:outputText value="DESCRIÇÃO:" style="font-weight: bolder"/><br/>
                        <h:outputText value="#{item.descricao}" />
                    </p:rowExpansion>

                    <f:facet name="footer">  
                        <p:outputPanel style="float: right">  
                            <h:outputText value="BUSCAR: " />  
                            <p:inputText id="globalFilter" onkeyup="itemTable.filter()" style="width:200px" />  
                        </p:outputPanel> 
                    </f:facet>
                    
                </p:dataTable>
            </p:dialog>
        </h:form>

        <h:form id="dialog6">
            <p:dialog header="Quantidade do Item de Estoque" widgetVar="quantItemDialog" resizable="false" id="quantItemDlg" dynamic="true" 
                      showEffect="fade" hideEffect="fade" modal="true" >
                <h:panelGrid id="quantidadeitem-display" columns="1">
                    <h:outputLabel for="quantidade" value="*Quantidade: " />  
                    <p:inputText id="quantidade-item" value="#{gerenciarTratamentoMB.itemTratamento.quantidade_consumida}" required="true" label="quantidade" size="30" >
                        <f:convertNumber integerOnly="true" minIntegerDigits="1" />
                    </p:inputText>
                </h:panelGrid>
                <p:commandButton value="Salvar" update=":cad:message, :cad:itens" action="#{gerenciarTratamentoMB.adcionarItemTratamento()}" image="ui-icon ui-icon-disk" style="float: right" oncomplete="quantItemDialog.hide();"/>
            </p:dialog>
        </h:form>

    </ui:define>
</ui:composition>

